Skip to content

Add libacvp PQC test coverage - #351

Open
aidangarske wants to merge 1 commit into
wolfSSL:masterfrom
aidangarske:add-libacvp-pqc-tests
Open

Add libacvp PQC test coverage#351
aidangarske wants to merge 1 commit into
wolfSSL:masterfrom
aidangarske:add-libacvp-pqc-tests

Conversation

@aidangarske

Copy link
Copy Markdown
Member
  • Adds wolfProvider integration coverage to pinned libacvp v2.3.1.
  • Exercises ML-KEM 512, 768, and 1024.
  • Exercises ML-DSA 44, 65, and 87.
  • Exercises SLH-DSA SHA2-128f.
  • Corrects two ML-KEM output-size queries in the OpenSSL adapter.
  • Supports normal and force-fail provider-routing tests.
  • Passes all eight wolfProvider CI matrix configurations.

Copilot AI review requested due to automatic review settings July 30, 2026 23:25

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

padelsbach
padelsbach previously approved these changes Aug 3, 2026
printf("Error initializing encapsulate in ML-KEM encap\n");
goto end;
}
- if (EVP_PKEY_encapsulate(pkey_ctx, NULL, &out_len, tc->k, &out_len_2) != 1) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a simple patch. Can you post a PR on Cisco's github?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wouldn't we have to wait for next version to pin to or pin to a commit? Id rather just keep one patch for the version it just supplies the tests

@padelsbach

Copy link
Copy Markdown
Contributor

@aidangarske, looking a bit closer, I think this is an issue in wolfprovider.

Commit e44edc66 made this change to deviate from OpenSSL, making WP more strict:

-    /* Size-only query: out == NULL with outLen/secretLen set per OpenSSL
-     * KEM encapsulate contract. Mixed-NULL is a caller bug, not a size
-     * query, so reject it explicitly. */
-    if (out == NULL) {
+    /* Size-only query: both output buffers NULL. A mixed-NULL request (one
+     * buffer NULL, the other not) is a caller bug, not a size query. */
+    if ((out == NULL) && (secret == NULL)) {

Can you add a test case in wolfprovider EVP_PKEY_encapsulate and _decapsulate? Should confirm that WP is off.

@padelsbach
padelsbach dismissed their stale review August 3, 2026 19:58

needs more investigation in WP vs OSSL

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants